|
Stochastic computing is a collection of techniques that represent continuous values by streams of random bits. Complex computations can then be computed by simple bit-wise operations on the streams. Despite the similarity in their names, stochastic computing is distinct from the study of randomized algorithms. == Motivation and a simple example == Suppose that is given, and we wish to compute . Stochastic computing performs this operation using probability instead of arithmetic. Specifically, suppose that there are two random, independent bit streams called ''stochastic number''s (i.e. Bernoulli processes), where the probability of a one in the first stream is , and the probability in the second stream is . We can take the logical AND of the two streams. The probability of a one in the output stream is . By observing enough output bits and measuring the frequency of ones, it is possible to estimate to arbitrary accuracy. The operation above converts a fairly complicated computation (multiplication of and ) into a series of very simple operations (evaluation of ) on random bits. More generally speaking, stochastic computing represents numbers as streams of random bits and reconstructs numbers by calculating frequencies. The computations are performed on the streams and translate complicated operations on and into simple operations on their stream representations. (Because of the method of reconstruction, devices that perform these operations are sometimes called stochastic averaging processors.) In modern terms, stochastic computing can be viewed as an interpretation of calculations in probabilistic terms, which are then evaluated with a Gibbs sampler. It can also be interpreted as a hybrid analog/digital computer. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「stochastic computing」の詳細全文を読む スポンサード リンク
|